perm filename PLANE[PAR,SYS] blob sn#551639 filedate 1980-11-30 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00033 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00004 00002	.require "pub.pub[1,stt]" source
C00005 00003	.CENTER
C00006 00004	.INSERT CONTENTS
C00007 00005	.PORTION MAINBODY
C00008 00006	.S Introduction
C00011 00007	.S Topological representation
C00017 00008	.SS Primitive sets and relations
C00021 00009	.SS Overlap and inclusion relations
C00030 00010	.SS Other definitions and facts
C00031 00011	.SSS Concerning points on curves
C00037 00012	.SSS Concerning the various types of curve
C00045 00013	.SSS Concerning regions
C00051 00014	.S Euclidean representation 
C00053 00015	.SS Lines and Line Segments
C00059 00016	.SS Ellipses
C00061 00017	.SS Circles
C00062 00018	.SSS One circle
C00065 00019	.SSS Two circles
C00070 00020	.SSS Circles and other objects
C00071 00021	.SSSS Circles and Points
C00073 00022	.SSSS Circles and Lines
C00075 00023	.SSSS Circles and LineSegments
C00077 00024	.SSSS Circles and Polygons
C00079 00025	.SS View geometric figures topologically
C00080 00026	.SS View two dimensions as one: SlicePLane
C00083 00027	.SSS Formalization problems
C00089 00028	.SSS Carryover statements
C00094 00029	.S Representation of the plane as a set of points
C00107 00030	.S View points as pairs of reals: coordinate systems
C00114 00031	.SS Rectangular coordinates
C00121 00032	.SS Polar coordinates
C00125 00033	.PORTION CONTENTS
C00127 ENDMK
C⊗;
.require "pub.pub[1,stt]" source;
.CENTER;
.SELECT 4;
Representations and Views for Plane Geometry 
.SKIP 2;
.SELECT 1;
Steve Tappel

.SKIP 4;

.INSERT CONTENTS;
.PORTION MAINBODY;
.COUNT PAGE FROM 1 TO 999;
.BEFORE PAGE
.	⊂
.	NOFILL;
.	PREFACE 0;
.	INDENT 0,0,0;
.	TURN ON "{}";
.	TURN ON "←→";
.	PLACE HEADING;
.	SELECT 2;
.		BEGIN "PAGE HEADING"
Plane Geometry→{PAGE}
.		END "PAGE HEADING";
.	⊃;
.NORMAL;
.NEXT PAGE;
.S Introduction

This memo is for reference, not intended to be read.
It provides formal statements of various and sundry facts of plane
geometry, within several different representations, and is being used
as the knowledge base for trials of representation-change
methods on selected (geometrical) problems.
So far (8-17-80) I have been using this knowledge base in the solution
of a sample problem concerning three circles (see CIRCLE[vu,stt]) 
and in an exploration of relevance-assessment methods using the same sample problem
(see RELEX[vu,stt].)
To a lesser extent I have also used the knowledge base to deal with 
a partly-geometrical formulation
of the Missionaries and Cannibals problem (see MISCAN[vu,stt]).
I have included a lot of material which is not relevant to those two problems,
quite deliberately, so that I can test out methods for deciding which facts are
relevant and which representations are appropriate to a given problem.

The major representations included are:
.BEGIN QUOTE;
1. Topological abstraction of plane figures

2. Euclidean geometry

3. The plane as a set of points

4. Analytic geometry, rectangular coordinates

5. Analytic geometry, polar coordinates
.END;
Views are provided between some of the representations:
.BEGIN ALG;
	1 ↔ 2		abstraction
	2 ↔ 2		SlicePlane
	2 ↔ 3		FigureAsSet
	2 or 3  ↔ 4	RectCoordSystems
	2 or 3  ↔ 5	PolarCoordSystems
.END;
.S Topological representation

The "topological" representation is an abstraction of the 
usual Euclidean representation, concerning which see Section III.
Shape, size, and distance are ignored.
The "topological" plane contains only three kinds of object:
points, curves and regions.
They are 0, 1 and 2-dimensional respectively.
.BEGIN ALG;






#
.END;

The abstraction away from distance-related properties can be quite useful,
especially in dealing with problems or concepts where shape, size and distance are
irrelevant.
(Missionaries and Cannibals can be such a case.
I gave a formal statement of the problem in terms of points (representing,
among other things, missionaries and cannibals) and regions (representing
the river, its banks and the boat). 
In that formalization it is clear that distance-related properties are
irrelevant, because they are never mentioned.
But I could have given a problem statement saying "The river is 50m
wide, the boat is 3m long and 1.5m wide", etc. Then we would have to be smart and
⊗2deduce⊗* that these facts are irrelevant.)

.SS Primitive sets and relations

We take ⊗2points⊗*, ⊗2curves⊗* and ⊗2regions⊗* as primitive object types.
For each we have a predicate picking out objects of that type, and
the set of them all.
The predicate and set are definable in terms of each other.
.BEGIN ALG;
	Point(p)    <=>    pεPoints		;Or,  Point  =  λ(p). pεPoints
	Points    =    {p | Point(p)}

	Curve(c)    <=>    cεCurves
	Curves    =    {c | Curve(c)}

	Region(r)    <=>    rεRegions
	Regions    =    {r | Region(r)}
.END;
Between primitive types, at least some relations must be primitive.
What is the smallest set of primitive relations between points, curves and regions
sufficient to define all the relations we want?
Let us see...

We want to have overlap, inclusion and equality relations among points,
curves and regions.
There are quite a few of these, depending on the types of the objects; see the
next subsection.
It turns out they can all be defined in terms of just three, one equality relation
and two inclusion relations.
.BEGIN ALG;
	Equal(p q)

	On(p c)

	In(p r)
#
.END;
For instance, the inclusion relation on curves is defined like so:
c1 is included in c2 if every point On c1 is also On c2.
See the next subsection for details.
The reader may already